import pandas as pd

# 测试数据
df1 = pd.DataFrame({
    'id': [1,2,3,4],
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'score': [85,92,78,90]
})

df2 = pd.DataFrame({
    'id': [3,4,5,6],
    'age': [25,28,22,30],
    'city': ['NYC', 'LA', 'SF', 'Chicago']
})

# 测试用例1：内连接（保留共同id）
result_inner = pd.merge(df1, df2, on='id', how='inner')
print('内连接结果:\n', result_inner)

# 测试用例2：左连接（保留左表全部）
result_left = pd.merge(df1, df2, on='id', how='left')
print('左连接结果:\n', result_left)

# 测试用例3：多键合并（id+name）
df1['group'] = ['A','A','B','B']
df2['group'] = ['A','B','B','C']
result_multi = pd.merge(df1, df2, on=['id','group'], how='outer')
print('多键合并结果:\n', result_multi)